﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations.Schema;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Entity
{
    /// <summary>
    /// 组织机构岗位管理实体类
    /// 对应数据库表：sys_org_post_management
    /// </summary>
    [Table("sys_org_post_management")]  // 指定数据库表名
    public class SysOrgPostManagement
    {
        /// <summary>
        /// 岗位ID（主键）
        /// </summary>
        [Key]  // 标记为主键
        [Column("job_id")]  // 映射数据库字段名（下划线命名）
        public long JobId { get; set; }

        /// <summary>
        /// 组织ID
        /// </summary>
        [Column("organization_id")]
        public long OrganizationId { get; set; }

        /// <summary>
        /// 岗位编码
        /// </summary>
        [Column("job_code")]
        [MaxLength(50)]  // 限制字符串长度（根据数据库实际字段调整）
        public string JobCode { get; set; }

        /// <summary>
        /// 岗位名称
        /// </summary>
        [Column("job_title")]
        [MaxLength(100)]  // 限制字符串长度
        public string JobTitle { get; set; }

        /// <summary>
        /// 排序值（用于显示顺序）
        /// </summary>
        [Column("sorting")]
        public int Sorting { get; set; }

        /// <summary>
        /// 状态（0-禁用，1-启用）
        /// </summary>
        [Column("status")]
        public int Status { get; set; }

        /// <summary>
        /// 创建人
        /// </summary>
        [Column("create_by")]
        [MaxLength(50)]
        public string CreateBy { get; set; }

        /// <summary>
        /// 创建时间
        /// </summary>
        [Column("create_time")]
        public DateTime CreateTime { get; set; }

        /// <summary>
        /// 更新人
        /// </summary>
        [Column("update_by")]
        [MaxLength(50)]
        public string UpdateBy { get; set; }

        /// <summary>
        /// 更新时间
        /// </summary>
        [Column("update_time")]
        public DateTime UpdateTime { get; set; }

        /// <summary>
        /// 逻辑删除标识（0-未删除，1-已删除）
        /// </summary>
        [Column("is_delete")]
        public int IsDelete { get; set; }
    }
}
